草庐IT

Java SE - 集合

全部标签

c# - 如何让我的自定义配置部分表现得像一个集合?

我需要如何编写自定义ConfigurationSection以便它既是节处理程序又是配置元素集合?通常,您有一个继承自ConfigurationSection的类,然后它有一个继承自ConfigurationElementCollection的类型的属性,然后返回从ConfigurationElement继承的类型集合的元素.要对其进行配置,您将需要如下所示的XML:我想剪掉节点,并且只有: 最佳答案 我假设collection是您的自定义ConfigurationSection类的属性。您可以使用以下属性装饰此属性:[Config

c# - 测试集合是否包含基于特定属性的对象

我正在使用NUnit2.5.7。我想根据某个类的属性测试特定类的自定义对象集合是否包含某些对象。例如一个人为的例子...publicclassPerson{publicstringName{get;set;}publicPerson(stringname){Name=name;}}//...publicListGetFavouritePeople(){ListfavouritePeople=newList();favouritePeople.Add(newPerson("joe"));favouritePeople.Add(newPerson("fred"));favouritePeo

c# - 使用 LINQ 排序后获取集合中项目的新索引

我想在C#中对列表(或数组)进行排序,并希望为未排序列表中的每个项目保存新索引。即:A=231sorted(A)=123indexes=120我在Stackoverflow上读到LINQ特别有用,但我找不到具体的操作方法。 最佳答案 注意事项:我犯了一个错误,误读了OP的问题(这让我很尴尬,收到了这么多赞成票)。我希望(理想情况下)OP接受其他答案之一是正确的。为了公平对待投票者并本着SO的精神,我将修改此答案以使其正确。一个人可以携带两种扩展方法,一种用于旧索引,一种用于新索引(这是OP想要的)。publicstaticIEnum

c# - 当控件是数据绑定(bind)时,无法以编程方式将行添加到 datagridview 的行集合

首先,我在here中查找了这个相关问题。但解决方案dataGridView1.Rows.Add()在我的情况下不起作用。在我的Datagridview中,我有3个用于数据输入的文本框和2个供用户选择值(绑定(bind)到数据库中)的组合框。我的一个文本框设置为只读,这样用户只能在数据网格之外填充它(使用普通的TexBox和按钮)。当用户用数据填充DataGridView时,底部总是有一个空行;所以我禁用它并使用这段代码来防止用户在数据网格中添加新行...dataGridView1.AllowUserToAddRows=false我只想在用户单击我上面提到的按钮时添加一个新行(这会引发错

只读集合属性的C#对象初始化

对于我来说,我无法弄清楚下面的C#代码示例片段中发生了什么。测试类的集合(List)属性设置为只读,但我似乎可以在对象初始化器中分配给它。**编辑:修复了List'getter'的问题usingSystem;usingSystem.Collections.Generic;usingNUnit.Framework;namespaceWF4.UnitTest{publicclassMyClass{privateList_strCol=newList{"test1"};publicListStringCollection{get{return_strCol;}}}[TestFixture]p

c# - xunit.net 中是否有一种简单的方法可以在不考虑项目顺序的情况下比较两个集合?

在我的一个测试中,我想确保一个集合有特定的项目。因此,我想将此集合与预期集合的项目进行比较,不考虑项目的顺序。目前,我的测试代码看起来有点像这样:[Fact]publicvoidSomeTest(){//DosomethinginArrangeandActphasetoobtainacollectionListactual=...//NowtheimportantstuffintheAssertphasevarexpected=newList{42,87,30};Assert.Equal(expected.Count,actual.Count);foreach(variteminact

c# - 如何有条件地从 .NET 集合中删除项目

我正在尝试在.NET中编写一个扩展方法,它将对通用集合进行操作,并从集合中删除符合给定条件的所有项目。这是我的第一次尝试:publicstaticvoidRemoveWhere(thisICollectionColl,FuncCriteria){foreach(TobjinColl.Where(Criteria))Coll.Remove(obj);}然而,这将引发InvalidOperationException,“集合已修改;枚举操作可能无法执行”。这确实有道理,所以我第二次尝试使用第二个集合变量来保存需要删除的项目并迭代它:publicstaticvoidRemoveWhere(t

c# - 我应该从函数返回数组还是集合?

从函数返回多个相同类型的对象时,首选容器类型是什么?返回一个简单的数组(如MyType[])是否违反良好实践,或者你应该将它包装在一些通用容器中(如ICollection)?谢谢! 最佳答案 EricLippert有一个很好的article对此。如果您懒得阅读整篇文章,答案是:返回接口(interface)。 关于c#-我应该从函数返回数组还是集合?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/q

c# - .NET 集合命名约定

我和我的同事一直在讨论Collections应该叫什么。例如:类产品-集合-类产品或类产品-集合-类ProductCollection我环顾四周,看看是否可以找到使用其中一个或另一个的任何指南或原因,但似乎没有任何结果。例如,该框架似乎同时使用了这两种变体。我可以看到的论点是,具有产品变量集合的类应称为Products,但它的类型应为ProductCollection。如果有的话,哪个是正确的?在同一风向标下,有一个函数返回变量的命名标准。例如retVal?我们主要使用C#编写代码,但我不确定这会影响我的问题。 最佳答案 我会说,对

c# - 具有流畅验证集合的自定义消息

我将SetCollectionValidator用于通用集合。我的收藏是以下列表:publicclassAnswer{publicstringQuestionConst{get;set;}publicstringQuestionName{get;set;}publicboolRequired{get;set;}publicstringAnswer{get;set;}}我有验证设置和工作,所以当一个项目无效时,错误消息类似于:“'QuestionName'不能为空”。我希望错误消息显示类似“'TheFirstQuestion'mustnotbeempty.”之类的内容。(其中第一个问题是